package cn.brickie.factory;

/***
 * 生成基于给定信息的实体类的对象
 * @author Brickie
 * @date 2018/5/28 11:05
 */
public class ShapeFactory {

    /***
     * 使用 getShape 方法获取形状类型的对象
     * @param shapeType 对象类型
     * @return 结果实现类
     */
    public Shape getShape(ShapeType shapeType) {
        switch (shapeType) {
            case CIRCLE:
                return new Circle();
            case RECTANGLE:
                return new Rectangle();
            case SQUARE:
                return new Square();
            default:
                return null;
        }
    }
}
